package com.ruoyi.report_jl.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.report_tg.domain.bo.ExcelGeneralBo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 矿粉塑性指数试验检测记录业务对象 report_jl_kfnewsxzssyjlb_bs_info
 *
 * @author tll
 * @date 2024-07-16
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ReportJlKfnewsxzssyjlbBsInfoBo extends ExcelGeneralBo {

    /**
     * id
     */
    @NotNull(message = "id不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 共几页
     */
    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 第几页
     */
    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 记录编号
     */
    @NotBlank(message = "记录编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilbh;

    /**
     * 检测单位名称
     */
    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 工程部位/用途
     */
    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品名称
     */
    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量
     */
    @NotBlank(message = "样品数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsl;

    /**
     * 样品状态
     */
    @NotBlank(message = "样品状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpzt;

    /**
     * 样品时间
     */
    @NotNull(message = "样品时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsj;

    /**
     * 试验检测日期
     */
    @NotBlank(message = "试验检测日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiyjcrq;

    /**
     * 试验条件温度
     */
    @NotBlank(message = "试验条件温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjwd;

    /**
     * 试验条件湿度
     */
    @NotBlank(message = "试验条件湿度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytjsd;

    /**
     * 检测依据
     */
    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 附加声明
     */
    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 报表名称
     */
    @NotBlank(message = "报表名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String baobmc;

    /**
     * 报表编号
     */
    @NotBlank(message = "报表编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String baobbh;

    /**
     * 工程名称
     */
    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcmc;

    /**
     * 检测人
     */
    @NotBlank(message = "检测人不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancr;

    /**
     * 记录人
     */
    @NotBlank(message = "记录人不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilr;

    /**
     * 复核人
     */
    @NotBlank(message = "复核人不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fuhr;

    /**
     * 日期
     */
    @NotNull(message = "日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date riq;

    /**
     * 备注
     */
    @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
    private String remark;

    /**
     * 设备id逗号分隔
     */
    @NotBlank(message = "设备id逗号分隔不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shebIds;

    /**
     * 检测依据ids
     */
    @NotBlank(message = "检测依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyjIds;

    /**
     * 判定依据ids
     */
    @NotBlank(message = "判定依据ids不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyjIds;

    /**
     * h11
     */
    @NotNull(message = "h11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal h11;

    /**
     * h12
     */
    @NotNull(message = "h12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal h12;

    /**
     * h13
     */
    @NotNull(message = "h13不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal h13;

    /**
     * h21
     */
    @NotNull(message = "h21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal h21;

    /**
     * h22
     */
    @NotNull(message = "h22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal h22;

    /**
     * h23
     */
    @NotNull(message = "h23不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal h23;

    /**
     * 平均H1
     */
    @NotNull(message = "平均H1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal pingjh1;

    /**
     * 平均H2
     */
    @NotNull(message = "平均H2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal pingjh2;

    /**
     * 平均H3
     */
    @NotNull(message = "平均H3不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal pingjh3;

    /**
     * 盒号11
     */
    @NotBlank(message = "盒号11不能为空", groups = { AddGroup.class, EditGroup.class })
    private String heh11;

    /**
     * 盒质量11
     */
    @NotNull(message = "盒质量11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hezl11;

    /**
     * 盒+湿土质量11
     */
    @NotNull(message = "盒+湿土质量11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejstzl11;

    /**
     * 盒+干土质量11
     */
    @NotNull(message = "盒+干土质量11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejgtzl11;

    /**
     * 水分质量11
     */
    @NotNull(message = "水分质量11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shuifzl11;

    /**
     * 干土质量11
     */
    @NotNull(message = "干土质量11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gantzl11;

    /**
     * 含水率11
     */
    @NotNull(message = "含水率11不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hansl11;

    /**
     * 盒号12
     */
    @NotBlank(message = "盒号12不能为空", groups = { AddGroup.class, EditGroup.class })
    private String heh12;

    /**
     * 盒质量12
     */
    @NotNull(message = "盒质量12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hezl12;

    /**
     * 盒+湿土质量12
     */
    @NotNull(message = "盒+湿土质量12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejstzl12;

    /**
     * 盒+干土质量12
     */
    @NotNull(message = "盒+干土质量12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejgtzl12;

    /**
     * 水分质量12
     */
    @NotNull(message = "水分质量12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shuifzl12;

    /**
     * 干土质量12
     */
    @NotNull(message = "干土质量12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gantzl12;

    /**
     * 含水率12
     */
    @NotNull(message = "含水率12不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hansl12;

    /**
     * 平均含水率1
     */
    @NotNull(message = "平均含水率1不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hanslpjz1;

    /**
     * 盒号21
     */
    @NotBlank(message = "盒号21不能为空", groups = { AddGroup.class, EditGroup.class })
    private String heh21;

    /**
     * 盒质量21
     */
    @NotNull(message = "盒质量21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hezl21;

    /**
     * 盒+湿土质量21
     */
    @NotNull(message = "盒+湿土质量21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejstzl21;

    /**
     * 盒+干土质量21
     */
    @NotNull(message = "盒+干土质量21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejgtzl21;

    /**
     * 水分质量21
     */
    @NotNull(message = "水分质量21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shuifzl21;

    /**
     * 干土质量21
     */
    @NotNull(message = "干土质量21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gantzl21;

    /**
     * 含水率21
     */
    @NotNull(message = "含水率21不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hansl21;

    /**
     * 盒号22
     */
    @NotBlank(message = "盒号22不能为空", groups = { AddGroup.class, EditGroup.class })
    private String heh22;

    /**
     * 盒质量22
     */
    @NotNull(message = "盒质量22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hezl22;

    /**
     * 盒+湿土质量22
     */
    @NotNull(message = "盒+湿土质量22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejstzl22;

    /**
     * 盒+干土质量22
     */
    @NotNull(message = "盒+干土质量22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejgtzl22;

    /**
     * 水分质量22
     */
    @NotNull(message = "水分质量22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shuifzl22;

    /**
     * 干土质量22
     */
    @NotNull(message = "干土质量22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gantzl22;

    /**
     * 含水率22
     */
    @NotNull(message = "含水率22不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hansl22;

    /**
     * 平均含水率2
     */
    @NotNull(message = "平均含水率2不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hanslpjz2;

    /**
     * 盒号31
     */
    @NotBlank(message = "盒号31不能为空", groups = { AddGroup.class, EditGroup.class })
    private String heh31;

    /**
     * 盒质量31
     */
    @NotNull(message = "盒质量31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hezl31;

    /**
     * 盒+湿土质量31
     */
    @NotNull(message = "盒+湿土质量31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejstzl31;

    /**
     * 盒+干土质量31
     */
    @NotNull(message = "盒+干土质量31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejgtzl31;

    /**
     * 水分质量31
     */
    @NotNull(message = "水分质量31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shuifzl31;

    /**
     * 干土质量31
     */
    @NotNull(message = "干土质量31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gantzl31;

    /**
     * 含水率31
     */
    @NotNull(message = "含水率31不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hansl31;

    /**
     * 盒号32
     */
    @NotBlank(message = "盒号32不能为空", groups = { AddGroup.class, EditGroup.class })
    private String heh32;

    /**
     * 盒质量32
     */
    @NotNull(message = "盒质量32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hezl32;

    /**
     * 盒+湿土质量32
     */
    @NotNull(message = "盒+湿土质量32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejstzl32;

    /**
     * 盒+干土质量32
     */
    @NotNull(message = "盒+干土质量32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hejgtzl32;

    /**
     * 水分质量32
     */
    @NotNull(message = "水分质量32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal shuifzl32;

    /**
     * 干土质量32
     */
    @NotNull(message = "干土质量32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal gantzl32;

    /**
     * 含水率32
     */
    @NotNull(message = "含水率32不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hansl32;

    /**
     * 平均含水率3
     */
    @NotNull(message = "平均含水率3不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal hanslpjz3;

    /**
     * 液限
     */
    @NotNull(message = "液限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal yex;

    /**
     * 塑限
     */
    @NotNull(message = "塑限不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal sux;

    /**
     * 塑性指数
     */
    @NotNull(message = "塑性指数不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal suxzs;

    /**
     * heh11_id
     */
    @NotNull(message = "heh11_id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long heh11Id;

    /**
     * heh12_id
     */
    @NotNull(message = "heh12_id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long heh12Id;

    /**
     * heh21_id
     */
    @NotNull(message = "heh21_id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long heh21Id;

    /**
     * heh22_id
     */
    @NotNull(message = "heh22_id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long heh22Id;

    /**
     * heh31_id
     */
    @NotNull(message = "heh31_id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long heh31Id;

    /**
     * heh32_id
     */
    @NotNull(message = "heh32_id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long heh32Id;

    @NotNull(message = "子表", groups = { AddGroup.class, EditGroup.class })
    private List<Object> detailList;

    @NotNull(message = "报表编号集", groups = { AddGroup.class, EditGroup.class })
    private List<String> baobbhList;

}
